package br.com.utfpr.persistence;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

import br.com.utfpr.modelo.Estado;

public class ConsultaEstado extends Conexao {
	
	/**
	 * Consulta o estado pelo códiogo uf informado.
	 * 
	 * @param String - uf
	 * @return Estado
	 */
	public Estado consultaEstadoPorUf (String uf) {
		Estado estado = null;
		Connection con = abreConexao();
		
		try {
			
			String sql = "SELECT ibge, sigla, nome, area FROM estados WHERE UPPER(sigla) = UPPER(?) ;";
			
			PreparedStatement ps = con.prepareStatement(sql);
			
			ps.setString(1, uf);
			
			ResultSet res = ps.executeQuery();
			
			if (res != null) {
				while (res.next())	{
					estado = new Estado();
					
					estado.setIbge(res.getInt("ibge"));
					estado.setSigla(res.getString("sigla"));
					estado.setNome(res.getString("nome"));
					estado.setArea(res.getDouble("area"));
				}
			}
		} catch (SQLException e) {
			System.out.println("### ERRO AO CONSULTAR O ESTADO. ###");
			e.printStackTrace();
		} finally {
			fechaConexao(con);
		}
		
		return estado;
	}

}
